/**
 * Neo4j数据库清空脚本
 * 
 * 使用方法:
 * 1. 确保Neo4j服务器正在运行
 * 2. 执行 node clearNeo4j.js
 */

// 引入Neo4j驱动
const neo4j = require('neo4j-driver');

// 数据库连接配置
const URI = process.env.NEO4J_URI || 'neo4j://139.186.157.99:7687';
const USER = process.env.NEO4J_USER || 'neo4j';
const PASSWORD = process.env.NEO4J_PASSWORD || 'Haoziwoaini1314..'; // 替换为你的实际密码

// 创建驱动
const driver = neo4j.driver(URI, neo4j.auth.basic(USER, PASSWORD));

async function clearDatabase() {
    const session = driver.session();
    
    try {
        console.log('开始清空Neo4j数据库...');
        
        // 删除所有关系
        console.log('删除所有关系...');
        await session.run('MATCH ()-[r]-() DELETE r');
        
        // 删除所有非User节点
        console.log('删除所有非User节点...');
        await session.run('MATCH (n) WHERE NOT n:User DELETE n');
        
        // 可选：如果也要删除User节点，取消下面的注释
        // console.log('删除所有User节点...');
        // await session.run('MATCH (n:User) DELETE n');
        
        console.log('Neo4j数据库已成功清空!');
    } catch (error) {
        console.error('清空Neo4j数据库时出错:', error);
    } finally {
        await session.close();
        await driver.close();
    }
}

// 执行清空操作
clearDatabase(); 